Events/Communication
__NOEDITSECTION__ : Note that this page is automatically generated; editing it is pointless. To edit event descriptions, edit the entries in the alphabetical pages, e.g. Events/A, Events/B, etc. Changes there will be copied over to here within a few hours. Communication related events (new with patch 1.12) Fired when the client receives a message from SendAddonMessage ; arg1 : prefix ; arg2 : message ; arg3 : distribution type ("PARTY","RAID","GUILD" or "BATTLEGROUND") ; arg4 : sender Fired when the client receives an AFK auto-response ;arg1 : AFK response message ;arg2 : author (new with patch 1.12) Fired when a message is received through the battleground group channel ;arg1 : chat message ;arg2 : author ;arg3 : language (new with patch 1.12) Fired when a message is received from the leader of the battleground group ;arg1 : chat message ;arg2 : author ;arg3 : language Fired for alliance specific events in the battleground such as assaulting a graveyard. ;arg1 : Battleground Message (eg. "The Alliance has taken the Blacksmith!") Fired for horde specific events in the battleground such as assaulting a graveyard. ;arg1 : Battleground Message (eg. "The Horde has taken the Blacksmith!") Fired for non faction specific events in the battlegrounds such as the battle start announcement. ;arg1 : Battleground Message (eg. "Let the battle for Warsong Gulch begin.") Fired when the client recieves a channel message. ; arg1 : chat message ; arg2 : author ; arg3 : language ; arg4 : channel name with number ex: "5. General - Stormwind City" * zone is always current zone even if not the same as the channel name ; arg5 : target * second player name when two users are passed for a CHANNEL_NOTICE_USER (E.G. x kicked y) ; arg6 : AFK/DND/GM "CHAT_FLAG_"..arg6 flags ; arg7 : zone ID used for genaric system channels (General, Trade and LocalDefense) * not used for custom channels or if you joined an Out-Of-Zone channel ex: "General - Stormwind City" ; arg8 : channel number ; arg9 : channel name without number (this is _sometimes_ in lowercase) * zone is always current zone even if not the same as the channel name Fired when someone joins a chat channel you are in ; arg1 : seems to be empty ; arg2 : Name of the player that joined ; arg3 : seems to be empty again ; arg4 : Number and name of the channel (e.g. "5. MyOwnChannel") ; arg8 : Channel number ; arg9 : Window title Fired when a player leaves a channel that you are currently inside. ; arg1 : Appears to be left blank ; arg2 : Player name that left ; arg4 : Channel name with number ; arg7 : Appears to be left zero and no longer the channel number ; arg8 : Channel number ; arg9 : Channel name without number Fired when ListChannels() or ListChannelByName() is called, and there message is displayed in the chat frame. ;arg1: The list of values displayed by ListChannels() or ListChannelByName() in one string. ;arg4: The number and name of the channel the message came from. ie: "1. General" Fired when you enter or leave a chat channel ; arg1 : type ( "YOU_JOINED" if you joined a channel, or "YOU_LEFT" if you left ) ; arg4 : Channel name with number (e.g. "6. TestChannel") ; arg8 : Channel Number ; arg9 : Channel name without number Fired when something changes in the channel like moderation enabled, user is kicked, annoucements changed and so on. CHAT_*_NOTICE in GlobalStrings.lua has a full list of available types. ; arg1 : type ("ANNOUNCEMENTS_OFF", "ANNOUNCEMENTS_ON", "BANNED", "CHANNEL_OWNER", "INVALID_NAME", "INVITE", "MODERATION_OFF", "MODERATION_ON", "MUTED", "NOT_MEMBER", "NOT_MODERATED" ) ; arg2 : If arg5 has a value then this is the user effected ( eg: "Player Foo has been kicked by Bar" ), if arg5 has no value then it's the person who caused the event ( eg: "Channel Moderation has been enabled by Bar" ) ; arg4 : Channel name with number ; arg5 : Player that caused the event (eg "Player Foo has been kicked by Bar" ) Fired when the client receives a Do-Not-Disturb auto-response ; arg1 : DND response message ; arg2 : author Fired on sending or revicing a custom emote (one used by /e, /emote or a send chat message command with the emote flag) ; arg1 : Message that was sent/received ; arg2 : Name of the player who sent the message Fired when a message is sent or received in the Guild channel. ; arg1 : Message that was sent ; arg2 : Author ; arg3 : Language that the message was sent in Fired when you whisper a player that is ignoring you When testing this event the character name is sent twice as arg1 and arg2, Blizzard appears to use arg2 and ignores arg1. ; arg1 : Character name of who you tried to message ; arg2 : Character name of who you tried to message Fired for emotes from a monster, such as 'Murloc Forager attempts to run away in fear!' ; arg1 : The body of the emote: '%s attempts to run away in fear!' ; arg2 : The name of the monster: 'Murloc Forager' (Note: As of 1.12 arg1 now contains a %s string variable for where the mob name should be placed) Fired when a NPC says something. ; arg1 : Message ; arg2 : NPC name ; arg3 : Language used Fired when a NPC whispers you something Fired when a NPC yells, example would be the yells during an Alterac Valley from the Herald or a raid boss. ; arg1 : Message ; arg2 : NPC Name (eg: Onyxia) Fired when a message is sent or received in the Guild Officer channel. ; arg1 : Message that was received ; arg2 : Author ; arg3 : Language used Fired when a message is sent or received in the Party channel. ; arg1 : Message that was received ; arg2 : Author ; arg3 : Language used Fired when a message is sent or received in the Raid. ; arg1 : chat message ; arg2 : author ; arg3 : language ; arg1 : emote message ; arg2 : Name of the boss Fired when a message is sent or received from the raid leader. ; arg1 : chat message ; arg2 : author ; arg3 : language Fired when a warning message is sent or received from the raid leader. ; arg1 : chat message ; arg2 : author ; arg3 : language Fired when a message is sent or received in the Say channel. ; arg1 : chat message ; arg2 : author ; arg3 : language Example: Place this:RegisterEvent("CHAT_MSG_SAY"); in the / section of your MyMod.xml file. Then, have an if (event "CHAT_MSG_SAY") then MyMod_Say(event, arg1, arg2, arg3); end line, or something like it, in the / section of your MyMod.xml file. Then, have a function like the following in your MyMod.lua file: function MyMod_Say(event, arg1, arg2, arg3) PrevMsg = arg1; PrevPlyr = arg2; PrevLang = arg3; end This would store the previous message, player who said it, and language it was said in into some variables. Fired when a system chat message (they are displayed in yellow) is received. ; arg1 : The content of the chat message. arg1 formats are found in Blizzard's GlobalStrings.lua. Some possibilities: * ERR_LEARN_RECIPE_S (eg. "You have learned how to create a new item: Bristle Whisker Catfish.") * MARKED_AFK_MESSAGE (eg. "You are now AFK: Away from Keyboard") Fired for emotes with an emote token. /dance, /healme, etc ;arg1: Emote Message ;arg2: Name of person who emoted Fired when a whisper is received from another player. The rest of the arguments appear to be nil ; arg1 : Message received ; arg2 : Author ; arg6 : status Fired when the player sends a whisper to another player ; arg1 : Message sent ; arg2 : Player who was sent the whisper ; arg3 : Language Fired when a message is sent or received in the Yell channel. ; arg1 : Message that was received ; arg2 : Author ; arg3 : Language used Fired when... # You log in # Open the friends window (twice) # Switch from the ignore list to the friend's list # Switch from the guild, raid, or who tab back to the friends tab (twice) # Add a friend # Remove a friend # Friend comes online # Friend goes offline No args. Fired when a player is added or removed from the ignore list. Event is called twice. Not certain why it is called twice. When fired prompts the LFG UI to update the list of available LFG categories and objectives (i.e. new quests, zones, instances available to LFG). See API GetLFGTypes This event fires when a Unit's flags change (eg: due to /afk, /dnd, etc.) ; arg1 : The UnitId affected, eg: "player" ; NOTE : WoW appears to condense simultaneous flag changes into a single event. If you are currently AFK and not(DND) but you type /dnd you'll see two Chat Log messages ("You are no longer AFK" and "You are now DND: Do Not Disturb") but you'll only see a single PLAYER_FLAGS_CHANGED event. Fired when the client recieved a time played message. ; arg1 : Total time ; arg2 : Current time at this level Fired when the interface generates a message. These are the yellow messages in the top middle of the window. "No fish are hooked." is one example. ; arg1 : message Fired when the chat colour needs to be updated. Refer to the ChangeChatColor API call for details on the parameters. ; arg1 : Chat type ; arg2 : red ; arg3 : green ; arg4 : blue Fired when there's a reason to update the chat windows. When fired prompts the LFG UI to update the list of LFG players. Signals LFG query results are available. See API LFGQuery. Fired when the client receives the result of a SendWho() request from the server. use API SetWhoToUI to manipulate this functionality. This doesn't seem to be sent for WorldDefense - it comes in on CHAT_MSG_CHANNEL and totally skips the ZONE_UNDER_ATTACK code in the client. Is the same true for LocalDefense?